general.tsx 1.8 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647484950515253
  1. import { LogoLoader } from 'ui'
  2. import { PageContainer } from 'ui-patterns/PageContainer'
  3. import {
  4. PageHeader,
  5. PageHeaderDescription,
  6. PageHeaderMeta,
  7. PageHeaderSummary,
  8. PageHeaderTitle,
  9. } from 'ui-patterns/PageHeader'
  10. import { GeneralSettings } from '@/components/interfaces/Organization/GeneralSettings/GeneralSettings'
  11. import DefaultLayout from '@/components/layouts/DefaultLayout'
  12. import OrganizationLayout from '@/components/layouts/OrganizationLayout'
  13. import { OrganizationSettingsLayout } from '@/components/layouts/ProjectLayout/OrganizationSettingsLayout'
  14. import { usePermissionsQuery } from '@/data/permissions/permissions-query'
  15. import { useSelectedOrganizationQuery } from '@/hooks/misc/useSelectedOrganization'
  16. import type { NextPageWithLayout } from '@/types'
  17. const OrgGeneralSettings: NextPageWithLayout = () => {
  18. const { isPending: isLoadingPermissions } = usePermissionsQuery()
  19. const { data: selectedOrganization } = useSelectedOrganizationQuery()
  20. return (
  21. <>
  22. <PageHeader size="default">
  23. <PageHeaderMeta>
  24. <PageHeaderSummary>
  25. <PageHeaderTitle>Organization Settings</PageHeaderTitle>
  26. <PageHeaderDescription>
  27. General configuration, privacy, and lifecycle controls
  28. </PageHeaderDescription>
  29. </PageHeaderSummary>
  30. </PageHeaderMeta>
  31. </PageHeader>
  32. <PageContainer size="default">
  33. {selectedOrganization === undefined && isLoadingPermissions ? (
  34. <LogoLoader />
  35. ) : (
  36. <GeneralSettings />
  37. )}
  38. </PageContainer>
  39. </>
  40. )
  41. }
  42. OrgGeneralSettings.getLayout = (page) => (
  43. <DefaultLayout>
  44. <OrganizationLayout title="General">
  45. <OrganizationSettingsLayout>{page}</OrganizationSettingsLayout>
  46. </OrganizationLayout>
  47. </DefaultLayout>
  48. )
  49. export default OrgGeneralSettings